package org.cytoscape.myapp.cytoscape_app_v1.internal.tasks.visualHideEdge;

import java.util.List;
import java.util.Set;



import org.cytoscape.model.CyEdge;
import org.cytoscape.model.CyNetwork;
import org.cytoscape.model.CyTableUtil;
import org.cytoscape.view.model.CyNetworkView;
import org.cytoscape.view.presentation.property.BasicVisualLexicon;

 public  abstract class StateVisualEdge {
	
 
 public StateVisualEdge(){
	 
 }
 
 public   void visible_hide_Edge(CyNetwork network, CyNetworkView cyNetworkView){
	 {
			
			List<CyEdge> listEdge = CyTableUtil.getEdgesInState(network, "Visible", this.getStateVisibleEdge());
			for(CyEdge Edge:listEdge){
				cyNetworkView.getEdgeView(Edge).setVisualProperty(BasicVisualLexicon.EDGE_VISIBLE, this.getStateVisibleEdge());
				network.getDefaultEdgeTable().getRow(Edge.getSUID()).set("Visible", !this.getStateVisibleEdge());
			}
			cyNetworkView.updateView();
		} 
 }
  public abstract StateVisualEdge nextStateVisible_hide_Edge();
  public abstract boolean getStateVisibleEdge();

 
}
